package __3_simulation;

/*

杆子： 左   0————————————————————————————————100    右
向左走的坐标：-0————————————————————————————————-100
向右走的坐标：+0————————————————————————————————+100

有一根100厘米的杆子，第一行表示杆子上蚂蚁的数量n，第二行是用空格隔开的每只蚂蚁在杆上的初始位置Xi(-100 < Xi < 100)。
Xi是整数，大于0表示蚂蚁头朝右，小于零头朝左，没有等于零的数据，Xi的绝对值表示到左边端点的距离。
每只蚂蚁都在前进，速度1厘米每秒，蚂蚁碰头后会掉头。
输入的第二行第一个数据表示一只感冒的蚂蚁的初始位置，感冒的蚂蚁与其它蚂蚁碰头后会把感冒传染给那只蚂蚁。
输出当所有蚂蚁都离开后，感冒的蚂蚁有多少只？

输入1：
3
5 -2 8
输出1：
1
输入2：
5
-10 8 -20 12 25
输出2：
3
输入3：
5
9 8 10 -11 -12
输出3：
8 9 10 -11 -12



 */

import java.util.Scanner;
import java.util.Arrays;

public class __2_AntsGoWithCold {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int[] x = new int[n];
        int[] cold = new int[n];
        cold[0] = 0;
        for (int i = 0; i < n; i++) {
            x[i] = scan.nextInt();
        }
        // 自己做的时候模拟了一个程序，发现有问题不完善，也不好修，看完讲解视频，想了半天，理解不了，做不下去了
        
        int l = 0;
        int r = 0;
        int jj = x[l];
        for (int i = 1; i < n; i++) {
            if (jj > 0) {
                if (Math.abs(x[i]) < Math.abs(jj) && x[i] > 0) {
                    l++;
                }
                if (Math.abs(x[i]) > Math.abs(jj) && x[i] < 0) {
                    r++;
                }
            }
            if (jj < 0) {
                if (Math.abs(x[i]) < Math.abs(jj) && x[i] > 0) {
                    l++;
                }
                if (Math.abs(x[i]) > Math.abs(jj) && x[i] < 0) {
                    r++;
                }
            }
        }
        if (l != 0 || r != 0) {
            System.out.println(l + r + 1);
        } else {
            System.out.println(1);
        }
        
    }
}